In modern computer systems, vast amounts of data may need to be accessed by hundreds, thousands or even millions of different entities, including persons and groups (e.g., organizations) of persons. Accordingly, computer systems have been developed in which data is stored on multiple physical storage devices (“PSDs”) including, but not limited to magnetic tape, disk drives, solid state storage devices (SSDs, e.g., flash drives) or portions thereof. Typically, these PSDs are grouped together as part of one or more data storage systems (e.g., storage arrays), for example, data storage systems made available by EMC Corporation, headquartered in Hopkinton, Mass. (“EMC”).
Entities typically access the data on such data storage systems via one or more host systems (i.e., “hosts”) for which communication paths have been established over one or more communication media (e.g., as part of a network) between ports of the host systems and ports of the data storage systems. Through the host systems, data of the data storage system may be accessed and modified using I/O operations, for example, read and write operations. To this end, data storage systems may provide storage services to host systems. Host systems typically do not address the PSDs of the storage system directly, but rather, access the PSDs by addressing virtual (i.e., logical) storage units (VSUs) such as, for example, logical devices, logical volumes (LVs), thin devices and storage groups, which hide the details of actual physical storage from the host. A VSU may or may not correspond one-to-one to a PSD.
In addition to performing I/O operations, data storage systems may be managed (e.g., provisioned and configured). This typically is done via an interface with a peripheral device (e.g., a host system or another device coupled to the storage system), for example, by utilizing application programming interfaces (APIs), command-line interfaces (CLIs) or any suitable combination of the foregoing.
Modern computer systems often employ cloud-based storage systems, in addition, or as an alternative, to proprietary data storage systems. Interactions between data storage systems of a proprietary computer network and cloud-based storage systems typically require translation between SAN- or NAS-based protocols and cloud-based storage protocols.